home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / pine / ccmd / makefile.debug < prev    next >
Encoding:
Makefile  |  1988-08-19  |  3.5 KB  |  152 lines

  1. # Author: Howie Kaye
  2. #
  3. # Columbia University Center for Computing Activities, July 1986.
  4. # Copyright (C) 1986, 1987, Trustees of Columbia University in the
  5. # City of New York.  Permission is granted to any individual or
  6. # institution to use, copy, or redistribute this software so long as
  7. # it is not sold for profit, provided this copyright notice is
  8. # retained.
  9. #
  10.  
  11. .SUFFIXES: .c .o .obj .exe .a .lib .h .h4 .tmp
  12.  
  13. LOCAL=./local
  14. MACHINE=BSD
  15. CFLAGS= -g -DCCMDEBUG -I. -I$(LOCAL) -D$(MACHINE)
  16.  
  17. LIBNAME=ccmd-noran.a
  18.  
  19. INCLUDES=ccmd.h cmfnc.h cmfncs.h datime.h ccmdmd.h cmkeyval.h
  20. LOCALINCLUDES= ${LOCAL}/ccmd.h ${LOCAL}/cmfnc.h ${LOCAL}/cmfncs.h ${LOCAL}/datime.h $(LOCAL)/ccmdmd.h $(LOCAL)/cmkeyval.h
  21.  
  22. OBJ=.o
  23. EXE=
  24.  
  25. COBJS=ccmd$(OBJ) ccmdut$(OBJ) ccmdio$(OBJ) ccmdmd$(OBJ) ccmdst$(OBJ) \
  26.     stdact$(OBJ) cmcfm$(OBJ) cmkey$(OBJ) cmnum$(OBJ) cmqst$(OBJ) \
  27.     cmnoi$(OBJ) cmtxt$(OBJ) cmfld$(OBJ) cmtok$(OBJ) cmswi$(OBJ) \
  28.     cmpara$(OBJ) cmtad$(OBJ) cmmisc$(OBJ)
  29.  
  30. OBJS=ccmd$(OBJ) ccmdut$(OBJ) ccmdio$(OBJ) ccmdmd$(OBJ) ccmdst$(OBJ) \
  31.     stdact$(OBJ) cmcfm$(OBJ) cmkey$(OBJ) cmnum$(OBJ) cmqst$(OBJ) \
  32.     cmnoi$(OBJ) cmtxt$(OBJ) cmfld$(OBJ) cmtok$(OBJ) cmswi$(OBJ) \
  33.     cmpara$(OBJ) cmtad$(OBJ) cmmisc$(OBJ) cmusr$(OBJ) datime$(OBJ) \
  34.     cmfil$(OBJ) filelist$(OBJ) wild$(OBJ) cmchar$(OBJ) cmgrp$(OBJ) \
  35.     cmver$(OBJ) 
  36.  
  37. LIBS=ccmd.a -ltermlib
  38. #LIBS=-lccmd -ltermlib
  39.  
  40. RM=rm
  41. LINK=cc $(CFLAGS) -o $@ $@${OBJ} $(LIBS)
  42. COPY=cp
  43. CHMOD=chmod u+w
  44. LIBADD=ar r $(LIBNAME) $?
  45. RANLIB=ranlib $@
  46. EXT=unx
  47. SPLIT=./split$(EXE)
  48. MKDIR=mkdir
  49. RENAME=mv
  50. MAKE=make
  51.  
  52. all: test$(EXE) skel$(EXE)
  53.  
  54. ccmd: ccmd.a
  55.  
  56. split$(EXE): split$(OBJ)
  57.     $(CC) -o split split$(OBJ)
  58.  
  59. cmkeyval: cmkeyval$(OBJ)
  60.     $(CC) -o cmkeyval cmkeyval$(OBJ)
  61.  
  62. cmkeyval.h: cmkeyval
  63.     cmkeyval > cmkeyval.h
  64.  
  65. cmfnc.h: cmfnc.h4 cmconf.h4 cmcfm.cnf cmkey.cnf cmnum.cnf cmfld.cnf \
  66.      cmqst.cnf cmtxt.cnf cmswi.cnf cmtad.cnf cmtok.cnf cmnoi.cnf \
  67.      cmgnrc.cnf cmfil.cnf cmusr.cnf cmgrp.cnf cmpara.cnf split$(EXE) \
  68.      cmfnc.top cmfncs.top cmchar.cnf cmkeyval.h
  69.     m4 cmfnc.h4 > cmfnc.tmp
  70.     $(SPLIT) < cmfnc.tmp
  71.     $(RM) cmfnc.tmp
  72.  
  73. cmfncs.h: cmfnc.h
  74.  
  75. $(LOCAL): $(INCLUDES)
  76.     -$(MKDIR) $(LOCAL)
  77.  
  78. $(LOCALINCLUDES): $(INCLUDES)
  79.     -$(MKDIR) $(LOCAL)
  80.     -$(COPY) $(INCLUDES) $(LOCAL)
  81.     -$(CHMOD) $(LOCALINCLUDES)
  82.  
  83. ccmdmd.c: ccmdmd.$(EXT)
  84.     -$(COPY) ccmdmd.$(EXT) ccmdmd.c
  85.  
  86. $(COBJS): $(LOCAL) $(LOCALINCLUDES)
  87.  
  88. cmusr$(OBJ): cmusr.c $(LOCALINCLUDES) cmusr.h
  89.  
  90. datime$(OBJ): datime.c datime.h tzone.h dtpat.h
  91.  
  92. cmfil$(OBJ): cmfil.c $(LOCALINCLUDES) cmfbrk.$(EXT) filelist.h cmfil.h 
  93.  
  94. filelist$(OBJ): filelist.c $(LOCALINCLUDES) filelist.h
  95.  
  96. wild$(OBJ): wild.c
  97.  
  98. cmchar$(OBJ): cmchar.c
  99.  
  100. cmgrp$(OBJ): cmgrp.c $(LOCALINCLUDES) cmgrp.h
  101.  
  102. cmver$(OBJ): cmver.c cmver.h
  103.  
  104. $(LIBNAME): $(OBJS)
  105.     $(LIBADD)
  106.  
  107. #only for msdos
  108. # dir.${OBJ}: dir.c
  109. #    $(CC) dir.c 
  110. #
  111. # $(LIBNAME):: dir$(OBJ)
  112. #    $(LIBADD) 
  113. #end msdos only
  114.  
  115. ccmd.a:    $(LIBNAME)
  116.     $(COPY) $(LIBNAME) ccmd.a
  117.     $(RANLIB)
  118.  
  119. ask$(EXE): ask.$(OBJ)
  120.     cc -o ask ask.$(OBJ)
  121.  
  122. newversion1: ask
  123.     @echo 'Answer no unless you wish to update version info.'
  124.     -@if ( ask 'make a new version? ') then make newversion1 ; fi
  125.  
  126. newversion:
  127.     co -l cmver.h
  128.     incversion$(EXE) < cmver.h > cmver.h.new
  129.     $(RENAME) cmver.h cmver.h.old
  130.     $(RENAME) cmver.h.new cmver.h
  131.     ci -u cmver.h
  132.     $(MAKE) ccmd.a
  133.  
  134. #install: $(LOCALINCLUDES) ccmd.a newversion1
  135. install: $(LOCALINCLUDES) ccmd.a
  136.     $(COPY) ccmd.a /usr/local/lib/libccmd.a
  137.     $(RANLIB) /usr/local/lib/libccmd.a
  138.  
  139. /usr/local/lib/libccmd.a: $(LOCALINCLUDES) ccmd.a
  140.     $(MAKE) install
  141.  
  142. test$(OBJ): test.c $(LOCALINCLUDES)
  143.  
  144. test$(EXE): test$(OBJ) ccmd.a
  145.     $(LINK)
  146.  
  147. skel$(OBJ): skel.c $(LOCALINCLUDES)
  148.  
  149. skel$(EXE): skel$(OBJ) ccmd.a
  150.     $(LINK)
  151.  
  152.